#ifndef CMAINWINDOW_H
#define CMAINWINDOW_H

#include <QMainWindow>

namespace Ui
{
    class CMainWindow;
}

class CMainWindow : public QMainWindow
{
    Q_OBJECT
    public:
        explicit CMainWindow(QWidget *parent = 0);
        ~CMainWindow();

    private:
        Ui::CMainWindow *m_ui;

        void ResizePixelWithAspectRatio();
        void ResizePixelWithoutAspectRatio();

        void PopUpMessage(const QString msg);
        const QPixmap* GetActualImage();

        void SetActualImage(QImage img);

        static const QString K_REZISE_PIXEL_W_AR;
        static const QString K_REZISE_PIXEL_WO_AR;

        static const QString K_GRAY_SCALE_AVERAGE;
        static const QString K_GRAY_SCALE_LUMINOSITY;
        static const QString K_GRAY_SCALE_LIGHTNESS;

    public slots:
        void SaveImage();
        void LoadImage();
        void Crop();
        void Resize();
        void GrayScale();
        void InvertImage();
        void CloseTab(int index);
};

#endif // CMAINWINDOW_H
